احتمالا از اولین روزهایی که با کامپیوتر شخصی کار کردهاید، با اصطلاح آنتیویروس و نرمافزار آنتیویروس آشنا شدهاید. از سالهای ابتدایی دههی ۱۹۹۰ که دوران اوجگیری کامپیوترهای شخصی بود، آنتیویروسها بهعنوان ابزارهای الزامی و پیشفرض سیستمهای کامپیوتری شناخته میشدند. با گذشت زمان و پیشرفت مجرمان سایبری و توسعهی ابزارهای نفوذ حرفهایتر، آنتیویروسها هم پیچیدهتر و پیشرفتهتر شدند. امروز هم اگر از یک متخصص فناوری مشاورهای برای بهبود عملکرد و امنیت کامپیوتر شخصی (یا حتی گوشی هوشمند) خود بگیرید، احتمالا با پیشنهاد نصب آنتیویروس روبهرو میشوید.
باوجود تمایل زیاد کاربران به استفاده از آنتیویروس در کامپیوترهای شخصی و گوشیهای هوشمند، برخی کارشناسان نیاز چندانی به استفاده از آنها نمیبینند. درواقع اگر شما مراقب رفتارها و فعالیتهای خود در فضای آنلاین و آفلاین باشید، آنتیویروس شما وظایف آنچنان دشواری نخواهد داشت و تنها در پسزمینهی سیستم، درحال آمادهباش میماند. البته در همان حالت هم آنتیویروس کارهای زیادی انجام میدهد.
پاسخ به سول آنتیویروس چیست و چگونه کار میکند، بسته به شرکت سازندهی نرمافزار و روشهای امنیتی موردنظر آنها، تفاوت پیدا میکند. بههرحال هر شرکت امنیتی راهکارهای خاص خود را در مقابله با انواع بدافزار دارد و شاید حتی تعریفی متفاوت از آنتیویروس داشته باشد. بههرحال آنتیویروسها رویکردهای مشترکی هم در مقابل مجرمان سایبری دارند که دست یافتن به تعریف مشترک را آسانتر میکند. درنهایت آشنایی با روش کارکرد آنها میتواند در انتخاب بهترین نرمافزار آنتیویروس برای کاربرد شخصی یا تجاری، کارساز باشد.
آنتیویروس چیست؟
نرمافزار آنتی ویروس یا در تعریف دقیقتر و بهروزتر آنتیمالور (ضد بدافزار) ابزاری است که بر اپلیکیشنهای موجود در کامپیوتر شخصی یا گوشی هوشمند، نظارت میکند. آنتیویروس بهدنبال اپلیکیشنهایی میگردد که نباید در دستگاه شما نصب شده باشند و بهنوعی ناشناس و مزاحم هستند. آنتیویروسها از روشهای گوناگون استفاده میکنند تا فایلهای شخصی همچون اسناد متنی را از فایلها و اپلیکیشنهای مخرب متمایز کنند. بههرحال آنتیویروس باید تفاوت بین یک فایل ورد و یک بدافزار مزاحم نمایشدهندهی تبلیغات را بهخوبی بشناسد. بهعلاوه اگر یک اپلیکشن قانونی و رسمی مورد نفوذ مجرمان سایبری قرار بگیرد و بهعنوان ابزار سوءاستفاده بهرهبرداری شود، آنتیویروس باید آن را شناسایی کند.
آنتیویروس پس از شناسایی فایل مخرب، آن را قرنطینه یا حذف میکند
برخی از نرمافزارهای آنتیویروس، عملکرد آنی و زنده دارند که بهصورت خودکار، جلوی اجرا شدن ویروسها و بدافزارها را میگیرند. بهعلاوه، آنها حتی مانع از مرور وبسایتهای مخرب یا بازکردن ایمیلهای حاوی بدافزار میشوند. برخی دیگر که در دستهی ابزارهای ترمیمی قرار میگیرند، باید در دورههای زمانی منظم اجرا شوند تا سیستم را اسکن کنند. درواقع آنها پس از آلوده شدن سیستم وارد عمل میشوند.
پس از اینکه نرمافزار آنتیویروس، یک فایل مخرب بدافزاری را در سیستم شما شناسایی میکند، پیشنهادهای گوناگونی برای مقابله با آن ارائه میکند. پیشنهادها عموما شامل قرنطینه کردن (غیرفعالسازی عملکرد اصلی نرمافزار) یا حذف کردن کامل میشود. اگرچه حذف کردن کامل بدافزار، ابزاری عالی برای جلوگیری از آلوده شدن سیستم محسوب میشود، قرنطینه کردن به شرکت تولیدکنندهی نرمافزار اجازه میدهد تا تحلیلی عمیقتر روی آن داشته باشد. تحلیل عمیقتر باعث توسعهی بهتر نسخههای بعدی آنتیویروس و بهینهسازی سیستم مقابله میشود.
آیا به نرمافزار آنتیویروس نیاز دارید؟
سیستمهای عامل مدرن، عموما با ابزارهای امنیتی پیشفرض ارائه میشوند. بهعنوان مثال میتوان به فایروالهای پیشفرض یا ابزاری همچون ویندوز دیفندر (Windows Defender) در سیستمعامل مایکروسافت اشاره کرد. ابزارهای مذکور، از اجرا شدن ویروسها در سیستمعامل جلوگیری میکنند. با بهرهمندی از ابزارهای پیشفرض، میتوان ادعا کرد که خطر خاصی کاربران را تهدید نمیکند. البته آنها بههرحال باید اقدامهای امنیتی مرسومی همچون پرهیز از کلیک کردن روی لینکهای مشکوک، دانلود کردن فایلهای مشکوک و اتصال حافظههای جانبی را انجام دهند. از اقدامهای امنیتی شدید سطح کاربر نیز میتوان به اجرای نرمافزارها و فایلهای جدید روی ماشین مجازی اشاره کرد.
باوجود تمام تمهیدات امنیتی، برخی اوقات خطرهایی جدید، کاربران دنیای فناوری را تهدید میکند. بهعنوان مثال نفوذ به سرورهای قانونی و مورد اعتماد یا آسیبپذیری در شبکهی وایفای یک کاربر، میتواند بهانهای برای نفود و خرابکاری یک مجرم سایبری باشد. درنتیجه استفاده کردن از یک آنتیویروس قوی در کنار ابزارهای امنیتی پیشفرض سیستمعامل و رعایت پیشنیازهای امنیتی، شما را در برابر تهدیدهای خاص، مقاوم میکند. در بدترین حالت، آنتیویروس به شما اطمینان میدهد که در مقابل تهدیدهای خاص همچون باجافزار، مقاوم هستید. در بهترین حالت هم این ابزار امنیتی، پیش از اجرا شدن نرمافزارهای مخرب، امنیت سیستم شما را حفظ میکند.
اگرچه در میان بهترین آنتیویروسهای موجود در بازار، نمونههای پولی نیز وجود دارد، اما بسیاری از آنتیویروسها هم در نسخههای رایگان به بازار عرضه میشوند که نیازهای کاربر عادی را بهراحتی برطرف میکنند. درنهایت، کارشناسان امنیتی پیشنهاد میدهد که حداقل از یک آنتیویروس پایهای در سیستم خود استفاده کنید تا حداقلهای امنیتی در سیستمعامل پیاده شوند. از میان مشهورترین نرمافزارهای آنتیویروس کنونی، میتوان به بیتدیفندر، آواست، کسپرسکی، اویرا، نود ۳۲ و مالوربایتس اشاره کرد. قطعا گزینههای متعدد دیگری هم در بازار وجود دارند که میتوانید آنها را خریداری کرده یا از نسخههای رایگان بهرهمند شوید.
آنتیویروس چگونه کار میکند؟
نرمافزارهای آنتیویروس از سالها پیش تاکنون بسیار تکامل یافتهاند. نسخههای اولیه، نرمافزارهایی بودند که تنها توان مقابله با فهرستی مشخص از ویروسها را داشتند. امروزه باوجود میلیونها بدافزار متفاوت در دنیای فناوری، قطعا به ابزارهای پیشرفتهتری نیاز داریم. آنتیویروسهای امروزی بسیار پیشرفتهتر و گستردهتر از نسخههای پیشین عمل میکنند. بهترین نسخههای موجود، ترکیبی از روشهای گوناگون را برای شناسایی و مقابله با تهدیدهای نرمافزاری پیادهسازی میکنند. درنهایت، سه تاکتیک اصلی برای مقابله با بدافزارها وجود دارد که در ادامه شرح میدهیم.
روشی مبتنی بر اثر یا امضای ویروس (Signature)
یکی از مشهورترین و قدیمیترین روشهایی که برای مقابله با انواع ویروس و بدافزار استفاده میشود، از ساختار یا اثر کد دیجیتالی آنها استفاده میکند. در این روش، اگر کد دیجیتالی خاصی در ویروس دیده شود، عملیات قرنطینه یا حذف کردن اجرا خواهد شد. درواقع میتوان آن را شبیه به مقابله با افراد خلافکار براساس اثر انگشت دانست. نکتهی مثبت این روش آن است که پس از شناسایی یک ویروس، میتوان مشخصات آن را در دیتابیس اثر ویروس نرمافزار وارد کرد تا در زمان اسکن سیستمهای دیگر، آنتیویروس بهدنبال اثرهای مشابه باشد.
نقطهی ضعف روش اثر یا Signature این است که در برابر بدافزارها و تهدیدهای جدید، کارایی ندارد. درواقع حداقل یک نفر یا سیستم باید توسط ویروس آلوده شود تا آنتیویروس درصورت شناسایی بدافزار، مشخصات آن را به دیتابیس خود وارد کند. همین فرایند، یعنی بهروز کردن دیتابیس، بهعنوان دلیل اصلی بهروزرسانی اکثر آنتیویروسها شناخته میشود. باتوجه به اینکه روزانه صدها هزار ویروس جدید توسعه مییابند، برای حفاظت از سیستمها قطعا به روشهای بیشتر و پیچیدهتری نیاز خواهیم داشت.
شناسایی رفتار
یکی از روشهای مدرن برای شناسایی و حذف ویروسها و بدافزارهای شناختهشده یا جدید، از شناسایی رفتار بهره میبرد. شناسایی رفتار بهجای بررسی کدهای نرمافزار، روش عملکرد آن را مورد مطالعه قرار میدهد. روشی که یک کاربر از سیستمعامل استفاده میکند یا روش عملکرد سیستمعامل در موقعیتهای گوناگون، بهراحتی قابلتعریف و شناسایی است. درمقابل، ویروسها و بدافزارها رفتارهایی خاص از خود نشان میدهند که شبیه به رفتار روزمرهی کاربران نیست.
یک بدافزار شاید در عملکرد ابتدایی تلاش کرده تا راهکارهای ضد ویروس یا ضد بدافزار موجود در سیستم را غیرفعال کند. ویروس مذکور، برای انجام این رفتار عموما بدون کسب اجازه از کاربر، بهمحض اجرا شدن سیستمعامل، کار خود را انجام میدهد. از رفتارهای دیگر میتوان به اتصال به سرورهای خارجی و دانلود فایلهای خاص اشاره کرد. تحلیلهای رفتاری، بهدنبال چنین رویکردهایی در نرمافزارها هستند و حتی رویکردهای احتمالی و بالقوهی انجام رفتار را هم تحلیل میکنند. بهمحض شناسایی رفتار مشکوک، نرمافزار قرنطینه یا حذف میشود.
ترکیب روشهای گوناگون، مقابله با ویروسها را در نرمافزارهای امنیتی بهبود میبخشد
روش شناسایی رفتار هم نقاط ضعف خاص خود را دارد و حتی در برخی موارد از روش شناسایی اثر ضعیفتر عمل میکند؛ اما بههرحال وجود آن در کنار روشهای دیگر، به تکمیل شدن نرمافزار آنتیویروس کمک میکند. بهعنوان مثال، حملههای باجافزاری که فایلهای موجود در سیستم را رمزنگاری کرده و برای ارائهی کلید رمزگشایی، باج درخواست میکنند، نیاز به واکنش سریع دارند. عموما روش شناسایی اثر در واکنش به آنها کارساز نیست و روش شناسایی رفتار، عملکرد بهتری دارد. درواقع روش شناسایی رفتار، عملیات رمزنگاری را شناسایی و متوقف میکند.
یادگیری ماشین
یادگیری ماشین از عبارتهای مصطلح این روزها در دنیای هوش مصنوعی محسوب میشود. آموزش دادن کارهای خاص به کامپیوترها، همیشه دشوار و نیازمند زمان بوده است. ازطرفی یادگیری ماشین امروزه به کامپیوترها امکان میدهد تا خودشان، به خودشان آموزش دهند. همین فرایند، در آنتیویروسهای مدرن استفاده میشود و لایهای پیچیدهتر به فرایند حفظ امنیت آنها اضافه میکند.
نرمافزار آنتیویروسی که از یادگیری ماشین بهره میبرد، کد اپلیکیشن را تحلیل میکند و براساس درک خود از برنامههای سالم یا مخرب، تصمیمگیری میکند. روش مذکور که از کارآمدترین روشهای بهرهمندی از هوش مصنوعی محسوب میشود، در کنار تکنیکهای دیگر باعث تکمیل شدن آنتیویروس خواهد بود. امروزه یادگیری ماشین آنچنان کارآمد شده است که برخی شرکتهای امنیتی تنها از آن روش برای مقابله با ویروسها استفاده میکنند.
روش یادگیری ماشین نیاز به اتصال اینترنتی دارد تا هوش مصنوعی موجود در نرمافزار، از دیتابیسهای اطلاعاتی متصل به سرورهای ابری برای شناسایی نرمافزارهای مخرب استفاده کند. درنهایت، این روش با سرعت زیادی نسبت به روشهای انسانی تکامل پیدا میکند و در نرمافزارهای آنتیویروس مدرن، شاهد بهرهبرداری حرفهای از آن هستیم.
اسکن کامپیوتر با آنتیویروس
آنتیویروسها دو نوع اسکن برای شناسایی و مقابله با فایلهای ویروسی انجام میدهند. یک نوع از اسکن که همیشه جریان دارد، بهنامهای گوناگون اسکن آنی یا همیشگی (On-Acces, Resident, Real-Time, Background یا هر نام مشابه) شناخته میشود. در این وضعیت، آنتیویروس همیشه در پسزمینه اجرا میشود و هر فایلی که توسط کاربر باز شود را بررسی میکند. وقتی آنتیویروس در پسزمینه فعال باشد، زمانیکه روی یک فایل اجرایی EXE کلیک میکنید، ظاهرا نرمافزار بهسرعت باز میشود، درحالیکه اینگونه نیست. پیش از اجرای نرمافزار، آنتیویروس آن را بهصورت کامل با روشهای بالا بررسی میکند.
علاوه بر فایلهای اجرایی، انواع دیگر فایل نیز بهصورت خودکار و در پسزمینه توسط آنتیویروس بررسی میشوند. بهعنوان مثال، آرشیوهای با فرمت ZIP و RAR و فایلهای ورد نیز تحت بررسی قرار میگیرند تا حاوی فایلهای فشرده یا ماکرو مخرب نباشند. کاربران میتوانند برای افزایش نسبی سرعت سیستم خود، اسکن پسزمینه را در آنتیویروس غیرفعال کنند که البته اقدام مناسبی نیست و امنیت را تحت تأثیر قرار میدهد.
نوع دیگر اسکن سیستم توسط آنتیویروس، اسکن کامل نام دارد. اگر اسکن پسزمینه در نرمافزار شما فعال باشد، عموما به اسکن کامل سیستم نیازی پیدا نمیکند، چون روش اول بهصورت خودکار هر فایل مخربی را شناسایی میکند. بههرحال اسکن کامل در مواقعی مانند زمانیکه آنتیویروس را بهتازگی نصب کردهاید، پیشنهاد میشود. اکثر نرمافزارهای آنتیویروس هم ابزار زمانبندی اسکن کامل دارند که بهصورت دورهای، سیستم را اسکن میکند.
برخی اوقات آنتیویروسها در تشخیص بدافزارها دچار اشتباه میشوند. بههرحال حجم زیادی از نرمافزار با انواع کدنویسی و عملکرد در دنیای فناوری وجود دارد که احتمال خطا را در آنتیویروسها افزایش میدهد. برخی اوقات نرمافزار آنتیویروس یک فایل را مخرب تشخیص میدهد، درحالیکه فایل مذکور، سالم است. چنین رخدادی را بهنام False Positive میشناسیم. برخی آنتیویروسها حتی فایلهای سیستمی سیستمعامل یا اپلیکیشنهای متفرقهی مشهور یا حتی فایلهای خودشان را ویروس تشخیص میدهند. چنین تشخیصهای اشتباهی منجر به ایجاد اختلال در عملکرد برنامهها میشود و تاکنون مثالهای متعددی از آن را در اخبار خواندهایم.
تشخیصهای اشتباه آنتیویروسها، رخدادهای آنچنان مرسومی نیستند. درواقع در اکثر مواقع باید به تشخیص آنتیویروس اعتماد کنید. اگر پس از تشخیص، هنوز شک داشتید که فایلی بهاشتباه ویروس نامیده شده است، میتوانید آن را با بارگذاری در سرویس VirusTotal گوگل، آزمایش کنید. این سرویس، فایل را با آنتیویروسهای متعدد اسکن کرده و نتیجهی هرکدام را به شما اعلام میکند.
همانطور که گفته شد، با رعایت اصول اولیهی امنیتی خصوصا در اینترنت، میتوان از آلوده شدن به بسیاری از بدافزارها جلوگیری کرد. ازطرفی اگر بهدنبال لایهی امنیتی قویتری در سیستمعامل خود هستید و با کمی کند شدن سرعت آن مشکلی ندارید، نرمافزارهای آنتیویروس مدرن، بسیار کارآمد خواهند بود. بهعلاوه، استفاده از آنتیویروس در سیستمهای سرور و سیستمهای با عملکرد حیاتی، قطعا توصیه میشود.
نظر شما چیست؟ آیا حتما باید از آنتیویروس استفاده کنیم؟